﻿function _Financiamiento() {

    this.IdFinanciamiento = "";
    this.IdConvocatoriaProducto = "";
    this.DetalleFinanciamiento = null;
    this.ContDetalleFinanciamiento = "";

    this._CargarDetalleFinanciamiento = function (idfinanciamiento) {

        var _parent = this;

        jQuery.getScript(URL_PAGE + "Scripts/app/administrador/DetalleFinanciamiento.js", function () {
            _DetalleFinanciamiento.prototype = new Mantenimiento();
            _detalleFinanciamiento = new _DetalleFinanciamiento();

            Cont = _parent.ContDetalleFinanciamiento;
            _detalleFinanciamiento.Init(Cont
                        , {
                            Register: URL_PAGE + "Administrador/Convocatoria/RegistrarDetalleFinanciamiento",
                            Form: URL_PAGE + "Administrador/Convocatoria/FormDetalleFinanciamiento",
                            List: URL_PAGE + "Administrador/Convocatoria/ListDetalleFinanciamiento"
                        }
                        , "All");

            _parent.DetalleFinanciamiento = _detalleFinanciamiento;
            _parent.DetalleFinanciamiento.Form({ idfinanciamiento: idfinanciamiento });
            _parent.DetalleFinanciamiento.IdFinanciamiento = idfinanciamiento;
            _parent.DetalleFinanciamiento.List({ idfinanciamiento: idfinanciamiento });
        });
    };

    this.PreInit = function () {

        var _parent = this;

        if (_parent.IdFinanciamiento) {
            _parent._CargarDetalleFinanciamiento(_parent.IdFinanciamiento);
        }
        _parent._Editar();
    };



    /**
    Editar el registro
    */
    this._Editar = function () {

        var _parent = this;
        _parent._getContList().off('.editar');
        _parent._getContList().on('click', '.editar', function (e) {
            e.preventDefault();
            var obj = $(this);


            _parent.Form(
                {
                    id: obj.attr('data-Id')
                }
            );

            
        });
    };



    //Despues de cargar el formulario
    this._PostForm = function () {
        var _parent = this;
        _parent._InicializarVisualizacionControles();
        _parent.ValidacionCamposForm();
        _parent._CargarEventosForm();
    }

    this._InicializarVisualizacionControles = function () {

        var _parent = this;
        var form = _parent._getForm();
        form.find("#IdConvocatoriaProducto").val(_parent.IdConvocatoriaProducto);
    }

    this.ValidacionCamposForm = function () {

        var _parent = this;
        var form = _parent._getForm();
        form.find("#Nombre").addClass("validate[required]");
        form.find("#TEA").addClass("validate[required]");
        form.find("#TEM").addClass("validate[required]");
    }
    /**
    Carga de eventos
    */
    this._CargarEventosForm = function () {

        var _parent = this;
        var form = _parent._getForm();

        _parent.ConvertFechaCombos(form.find("#FechaInicioInscripcion"), "dd/mm/AAAA", "dd/mm/AAAA", true);
        _parent.ConvertFechaCombos(form.find("#FechaFinInscripcion"), "dd/mm/AAAA", "dd/mm/AAAA", true);
        _parent.ConvertFechaCombos(form.find("#Conv_FechaExamen"), "dd/mm/AAAA", "dd/mm/AAAA", true);

        _parent._getContForm().find("#aceptar").click(function () {
            form.submit();
        })

        form.validationEngine({
            ajaxSubmit: true,
            onValidationComplete: function (form, status) {

                if (status) {
                    form.ajaxSubmit({
                        success: function (responseText, statusText, xhr, $form) {
                            //console.log(responseText);
                            _parent._MensajesOperacion("success", "Registro grabado", "La asignación de la vendedora fue grabado correctamente");
                            //_parent.List();
                            _parent.IdFinanciamiento = responseText.idfinanciamiento;
                            _parent._CargarDetalleFinanciamiento(responseText.idfinanciamiento);
                        }
                    });
                }
            }
        });



    }
}
